﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MegavaniaX.InputProcessor;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Graphics;

namespace MegavaniaX.States
{
    /// <summary>
    /// Interface for all states.
    /// </summary>
    public interface IState
    {
        bool IsPaused { get; }

        void Update(GameTime gameTime);

        void Render(SpriteBatch spriteBatch);

        void ProcessInput(KeyboardState keyState, MouseState mouseState, TimeSpan elapsedTime);
    }
}
